/**
 * com.cnhis.his.customer.bo.Bck1Bo.java
 */
package com.mbmed.doctor.login.bo;

import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.mbmed.doctor.commons.utils.Page;
import com.mbmed.doctor.login.dao.Bck1Dao;
import com.mbmed.doctor.login.mapper.Bck1;
import com.mbmed.doctor.login.mapper.BckSub1;

/**
 * @file  Bck1Bo.java
 * @author 刘武
 * @version 0.1
 * @todo	Bck1业务操作接口
 * Copyright(C), 2013-2014
 *		 Shenzhen Coordinates Software Development Co., Ltd.
 * History
 *   	1. Date: 2014-09-28 01:39:11
 *      	Author: 刘武
 *      	Modification: this file was created
 *   	2. ...
 */
@Service
public class Bck1Bo {
	@Resource
	private Bck1Dao bck1Dao;
	

    /**
	 * @param bck1Dao the bck1Dao to set
	 */
	public void setBck1Dao(Bck1Dao bck1Dao) {
		this.bck1Dao = bck1Dao;
	}


	/**
     * 配置文件中编号：(1)
	 * 查找所有数据库记录
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     */
	@SuppressWarnings({ "rawtypes" })
    public List getAll() throws Exception {
		return bck1Dao.selectAll();
	}
	
    /**
     * 配置文件中编号：(2)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public List getByParamMap(Map paramMap) throws Exception{
		 return bck1Dao.selectByParamMap(paramMap);
	}
	
	
	
	 /**
     * 配置文件中编号：(2)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public List getByBce01(int bce01) throws Exception{
		 return bck1Dao.selectByBce01(bce01);
	}
	
	
	 /**
     * 配置文件中编号：(2-3)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public List getAdviceBck1() throws Exception{
		 return bck1Dao.selectAdviceBck1();
	}
	
	
	
	 /**
     * 配置文件中编号：(2-5)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public BckSub1 getAdviceExecBck1(Map paramMap) throws Exception{
		 return bck1Dao.selectAdviceExecBck1(paramMap);
	}
	
	
	 /**
     * 配置文件中编号：(2-6)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public BckSub1 getAdivDefaultBck1(Map paramMap) throws Exception{
		 return bck1Dao.selectAdivDefaultBck1(paramMap);
	}
	
	 /**
     * 配置文件中编号：(2-7)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : Bck1 卫生材料默认科室，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public String getAdivWsclBck1(Map paramMap) throws Exception{
		 return bck1Dao.selectAdivWsclBck1(paramMap);
	}
	
	
	 /**
     * 配置文件中编号：(2-8)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 获取诊疗项目对应执行科室，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public BckSub1 getDiagnosisTreatment(Map paramMap) throws Exception{
		 return bck1Dao.selectDiagnosisTreatment(paramMap);
	}
	
	 /**
     * 配置文件中编号：(2-9)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 获取诊疗项目对应执行科室，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public Bck1 getAdviceXcBck(Map paramMap) throws Exception{
		 return bck1Dao.selectAdviceXcBck(paramMap);
	}
	
	
	
	
	 /**
     * 配置文件中编号：(2-9)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 提取部门排班中默认药房，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public BckSub1 getMdeicBck1(Map paramMap) throws Exception{
		 return bck1Dao.selectMdeicBck1(paramMap);
	}
	
	
	 /**
     * 配置文件中编号：(2-10)
     * @param valueOne 需要进行查询的值。
     * @param valueTwo 需要进行查询的值。
     * @param valueThree 需要进行查询的值。
     * @return type : List 提取部门排班中默认药房，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public List getZhuanKeBck() throws Exception{
		 return bck1Dao.selectZhuanKeBck();
	}
	
	
	
	
	/**
     * 配置文件中编号：(3)
     * 查找符合条件的所有数据库记录
     * @param vo 与数据库中记录对应的值对象
     * @return type : List 返回查询操作所有符合条件的记录的VO对象集合，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings({ "rawtypes" })
    public List get(Bck1 vo) throws Exception{
		if(vo == null) return null;
        return bck1Dao.selectByVo(vo);
	}
	
    /**
     * 配置文件中编号：(3-2)
     * 分页查找
     * @param condition 与数据库中记录对应的值对象
     * @return type : Page 返回满足条件的记录集，操作失败返回null
     * @throws Exception
     */
	@SuppressWarnings("rawtypes")
	public Page getPage(Map condition) throws Exception{
		if(condition == null) return null;
        return bck1Dao.selectForPage(condition);
	}
	
	@SuppressWarnings({ "rawtypes" })
    public Page getPageByParamMap(Map condition, int currPage,	int pageSize) throws Exception{
		if (condition == null)
			return null;
		return bck1Dao.queryByParams(condition, currPage, pageSize);
	}
	
    /**
     * 配置文件中编号：(3-3)
     * 查找符合条件的所有数据库记录
     * @param pkid 与数据库中主键对应的值
     * @return type : RpDir 返回查询操作所有符合条件的记录的VO对象，操作失败返回null
     * @throws Exception
     */
	public BckSub1 get(String pkid) throws Exception{
		if(pkid==null) return null;
     	return bck1Dao.selectByPk(pkid);
	}
	
	/**
     * 配置文件中编号：(4)
     * 向数据库中插入一条记录
     * @param vo 与数据库中记录对应的值对象
     * @return type : RpDir 返回插入操作是否成功
     * @throws Exception
     */
    public Bck1 save(Bck1 vo) throws Exception{
    	if(vo == null) return null;		
		if(vo.getBck01()!=null) {
			return bck1Dao.updateByVo(vo);
		} else {
			//vo.setBck01(bck1Dao.getPKValue());
			return bck1Dao.insertByVo(vo);
		}
    }
    
    /**
     * 配置文件中编号：(5)
     * 删除符合条件的所有数据库记录
     * @param pkid 与数据库中主键对应的值
     * @return type : boolean 返回删除操做是否成功，操作失败返回false
     */
    public boolean remove(String pkid) throws Exception{
    	if(pkid == null) return false;
    	return bck1Dao.deleteByPk(pkid);
    }
    

    
    /**
     * 配置文件中编号：(6)
     * 删除数据库中与传入的值对象对应的记录
     * @param vo 与数据库中记录对应的值对象
     * @return type : boolean 返回删除操作是否成功
     * @throws Exception
     */
    public boolean remove(Bck1 vo) throws Exception{
    	if(vo == null) return false;
     	return bck1Dao.deleteByVo(vo);
    }
}
